This invention relates to the field of automatic transformation of messages. In particular, the invention relates to automatic transformation of messages between service versions.
Service-oriented architecture (SOA) is a software architecture based on discrete, independent units of software providing application functionality as services to other applications. This provides flexibility and resilience in providing the functions of the services. SOA may include web services provided over standard Internet protocols.
When a new version of a service is introduced into a system there is typically a middleware development task required to allow continued support of original clients that were designed to create and send messages to earlier versions of the service. This development task is normally based around the idea of transforming the structure and contents of messages from original clients to match the structure and contents required by the new service.
To enable the development of this transformation, the developer must understand:                a) the structure of both the original and new messages (often these are formally set using a schema);        b) the meaning of the content and structure of both the original and new messages so that the transformed message has the same meaning to the new service as the original message would have had to the original service.        
If this information is not available or is only partially known to the developer, the transformation created may not correctly transform messages for the new service when it is executed.